#include <REGX52.H>
#include "TIMER0.h"
#include "DELAY.h"
#include "BT.h"

sbit SG_PWM = P2^1;							 
unsigned char count=0;					    
unsigned char jd=1;
typedef unsigned int uint;		//我觉得是自定义 定义
typedef unsigned char uchar;
uint pass = 0;//数据位

void main()
{				UartInit();
   			Timer0Init();
	while(1)
		{
			
			if(pass == 0x06)
			{
				pass = 0;
				jd = 3;
				Delay(500);
				jd = 1;
			}
//			jd=1;	  
//			Delay(1000);
//			jd=2;	  
//			Delay(1000);
//			jd=3;	 
//			Delay(1000);
//			jd=4;	  
//			Delay(1000);
//			jd=5;	 
//			Delay(1000);
		}
}


// UART中断服务函数，使用中断号4（对应8051系列单片机的串行口中断）
void UART_INTERRUPT() interrupt 4
{
    // 从串行口数据缓冲器SBUF中读取接收到的数据，保存到变量pass中
    pass = SBUF;
    
    // 清除接收中断标志位RI（Receive Interrupt），允许再次接收数据
    RI = 0;
    
//    // 将接收到的数据pass写入SBUF，准备发送出去（实现回显功能）
//    SBUF = pass;
//    
//    // 等待发送完成，当TI（Transmit Interrupt）为1时表示发送完成
//    while(!TI);
//    
//    // 清除发送中断标志位TI，允许再次发送数据
//    TI = 0;
}
void Timer0() interrupt 1     
{

  TL0 = 0x33;	//1111 1110 0011 0011	
  TH0 = 0xFE;			 

    count++;					
	count%=40;	//使count的值一直处于0~39，正好四十个数，40*0.5=20，对应pwm
	if(count == 0)
	{
		count = 1;
	}
	
    if(count<=jd)
    {									
      SG_PWM=1;
    }
    else
    {
      SG_PWM=0;
    }
}